#ifndef CUCUMBER
	#define CUCUMBER
#endif

#define _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_DEPRECATE

/* in code we trust */

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <vector>
#include <set>
#include <map>
#include <stack>
#include <deque>
#include <queue>
#include <string>
#include <algorithm>
#include <cmath>
#include <sstream>
#include <limits>
 
using namespace std;

#define _ << " "
#define __ << " " <<
#define eol << "\n"
#define eol_ << "\n" <<
#define prec(_value) cout << fixed << setprecision(_value)

#define uint unsigned int
#define oint long long
#define lod  long double

#define  forx(i, n) for (oint i = 0; i < (oint)n;  i++)
#define rforx(n, i) for (oint i = n; i >= 0; i--)
#define repx(i,n,s) for (oint i = 0; i < (oint)n; i += s)
#define  allx(str) str.begin(), str.end()
#define rallx(str) str.rbegin(), str.rend()
#define pb push_back
#define mp make_pair
#define sqr(v) (v * v)
#define is_letter(c) ('a' <= c && c <= 'z' || 'A' <= c && c <= 'Z')
#define is_digit(c) ('0' <= c && c <= '9')

const lod eps = 1e-7;
const lod eps_l = 1e-12;
const lod infty = 1e+10;
